// pages/explore/index.js
import {$http} from '../../utils/http'
// import fly from '../../utils/request'
let page = 0  //全局变量，有缓存
Page({

  /**
   * 页面的初始数据
   */
  data: {
    cityName:'重庆',
    tabArr:[],
    tabIdx:0,
    sId:'',
    TabCur: 0,
    scrollLeft:0,
    course:[]
  },
  
  /**
   * 生命周期函数--监听页面加载
   */
  async onLoad(options) {
    //课程分类
    let cateRes = await getApp().fly.get('/classes/ReactCategory')
    // console.log('分类',cateRes);
    let {results} = cateRes.data
    let parentArr = results.filter(item=>item.parentId=='0-0')
    parentArr.forEach(item=>{
      item.children = results.filter(child=>item.objectId==child.parentId)
    })
    this.setData({
      tabArr:parentArr
    })
    //课程列表
    getApp().fly.get('/classes/ReactCourse',{
      limit:10
    }).then(res=>{
      page++
      this.setData({
        course:res.data.results
      })
    })
  },
  handleTab(ev){
    let {idx} = ev.currentTarget.dataset
    this.setData({tabIdx:idx})
    this.setData({
      sId:`item${idx-1}`
    })
  },
  tabSelect(e) {
    this.setData({
      TabCur: e.currentTarget.dataset.id,
      scrollLeft: (e.currentTarget.dataset.id-1)*60
    })
  },
  handleDetail(ev){
    let {idx} = ev.currentTarget.dataset
    // 打开新页面，页面栈中会存放两个页面
    wx.navigateTo({
      url: `/pages/detail/index?idx=${idx}&name=三丰`,
    })
  },
  handleCity(){
    // 此处的this指向的是Page对象
    // let that = this
    wx.navigateTo({
      url: '/pages/city/index',
      events:{
        // 向事件通道中，设定了一个等待触发的自定义函数
        changeCity:(data)=>{
          console.log('接收到了city页面传递回来的数据',data);
          this.setData({
            cityName:data.name
          })
        }
      }
    })
  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {
    console.log('触底了');
    // 携带不同页码条件，请求不同的数据
    let skip = page*10
    getApp().fly.get('/classes/ReactCourse',{
      limit:10,
      skip
    }).then(res=>{
      let {results} = res.data
      if(results.length){
        // 将新数据，追加到原来的数组列表
        this.setData({
          course:[
            ...this.data.course,
            ...results
          ]
        })
        page++
        return
      }
      //轻提示
      wx.showToast({
        title: '我是有底线的~',
        icon:'none'
      })
    })
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})